LTspiceが奏でる「ドレミファソラシド」




『LTspice Users Club』のWebサイトはこちら

■問題
使用するコマンド ― .WAVE/.TRAN/.MERS

小川 敦 Atsushi Ogawa

 図1は,CMOS型のタイマIC(NE555)を使用した,おもちゃの電子オルガンの回路図です.タイマICのOUT端子とC1間に接続された,8個の音階調整用の半固定抵抗(R1~R8)を,鍵盤用スイッチで切り替え,抵抗値を変えることで,発振周波数を変化させ「ドレミファソラシド」の音階を作っています.
 音階調整後,抵抗(R1)が接続されている,1番低い「ド」のスイッチを押したときの発振周波数は,523.25Hzで,抵抗値が12.8kΩでした.また,R8の抵抗値は6.4kΩでした.
 この場合,「ミ」のスイッチについている抵抗(R3)の値は(a)~(d)のどれでしょうか.ただし,図1の回路の発振周波数は,OUT端子とC1間に接続されている抵抗値の逆数に比例するものとします.


図1 タイマICを使用した,おもちゃの電子オルガンの回路図
OUT端子が出力で,抵抗(R9)とコンデンサ(C2)を介して8Ωのスピーカ(RL)が接続されている.
「ミ」のスイッチについている抵抗(R3)の値はいくつ?

(a)10.16kΩ (b)10.67kΩ (c)11.4kΩ (d)11.73kΩ

■ヒント

 一般的な楽器の音階の周波数は,12平均律というもので決められています.ある音階の1オクターブ高い音階の周波数は2倍となっており,その間を周波数比が一定になるように12分割して,音階を決めています.そのため,隣り合う音階の周波数の比は,すべて同じです.
 ピアノの鍵盤をイメージすれば,「ミ」の音階の周波数を求めることができます.周波数が分かればR3の抵抗値を計算することができます.

■解答


(a) 10.16kΩ

 ピアノの鍵盤は「ド,ド#,レ,レ#,ミ」という順番にならんでいます.つまり,「ミ」の音は「ド」の音から4音離れています.12平均律の性質から,「ド」の音の周波数をfdoとすると,「ミ」の音の周波数(fmi)は「fmi=fdo*2^(4/12)」というように計算できます.
 また,発振周波数は,抵抗値の逆数に比例するため「1/R3=(1/R1)*fmi/fdo」となります.数値を入れてR3を求めると「R3=R1/(2^(4/12))=12.8k/(2^(4/12))=10.16k」となります.


■解説

●タイマICを使用した発振回路の動作
 図2は,タイマICの主要な部分の内部ブロック図です.外部に抵抗とコンデンサを接続して,基本的な発振回路を構成しています.図1の回路は,この回路の抵抗値をスイッチで切り替えられるようにしたものです.


図2 タイマICの主要な部分の内部ブロック図
抵抗とコンデンサにより,基本的な発振回路を構成している.

 電源とGNDの間に,同じ抵抗値の抵抗(R1~R3)が直列に接続されており,VA,VBという基準電圧を作っています.VBは電源電圧の1/3で,VAが電源電圧の2/3になります.
 コンパレータ(U1)のマイナス入力端子がA点,コンパレータ(U2)のプラス入力端子がB点に,接続されています.U1のプラス入力端子とU2のマイナス入力端子は,IC外部で接続され,コンデンサ(C)が接続されています.そして,U1の出力はフリップ・フロップのリセット端子に接続され,U2の出力はフリップ・フロップのセット端子に接続されています.OUT端子とコンデンサは,IC外部の抵抗(R)で接続されています.

●セットとリセットで発振を継続
 図3は,図2の回路のOUT端子とC端子の波形です.


図3 図2の回路のOUT端子とC端子の波形
C端子の電圧により, フリップ・フロップがセットとリセットされ,発振を継続する.

 C端子の電圧がVBよりも低くなると,コンパレータ(U2)の出力が"H"レベルとなり,フリップ・フロップがセットされ,Q出力である,OUT端子は"H"レベルになります.すると,コンデンサ(C)は抵抗(R)によって充電され,電圧が上昇していきます.そして,端子の電圧がVAよりも高くなると,コンパレータ(U1)の出力が"H"レベルとなり,フリップ・フロップがリセットされ,OUT端子は"L"レベルになります.すると,コンデンサ(C)は,抵抗(R)で放電され,C端子の電圧は下がっていきます.これを繰り返すことで,発振を持続します.
 C端子の発振振幅は,VAとVBの電圧差なので,Vcc/3となります.コンデンサは抵抗により,充放電されますが,これを定電流源(IR)での充放電と近似すると,発振周期Tは式1で表されます.

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(1)

 C端子の電圧がVcc/2のときの抵抗(R)の電流をIRとすると,IRは式2になります.

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(2)

 式1,式2から発振周波数fを計算すると,式3になります.

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(3)

●発振回路の抵抗と発振周波数の関係
 図4は,タイマICを使用した発振回路の抵抗と発振周波数の関係をシミュレーションするための回路図です.R1の値を.STEPコマンドで6kΩから13kまで0.5KΩステップで変化させ,.MEASコマンドで発振周波数を読み取ります.


図4 タイマICを使用した発振回路の抵抗と発振周波数の関係をシミュレーションする回路
R1の値を6kΩから13kまで変化させ,.MEASコマンドで発振周波数を読み取る.

 シミュレーション実行後「.MEASコマンド」の結果を見るために「Ctrl+L」キーを押してエラー・ログを表示します.そのエラー・ログの中で右クリックして,「Plot .step'ed .meas data」を選択します.
 そして,表示されたウィンドウで「Plot Settings」,「Add Trace」コマンドを選択して表示された画面でfを選択し,OKボタンを押します.
 次に,表示されたグラフの横軸で右クリックし「Quantity Plotted」を1/rに書き換えてOKボタンを押すと,図5のように抵抗の逆数を横軸とし,縦軸を発振周波数としたグラフになります.発振周波数は抵抗の逆数に比例していることが分かります.


図5 図4の抵抗と発振周波数のシミュレーション結果
発振周波数は抵抗の逆数に比例している.

●12平均律による音階の周波数と抵抗値
 一般的な楽器の音階の周波数は,12平均律というもので決められています.ある音階の周波数を基準とすると,1オクターブ高い音階の周波数は2倍となります.そして,1オクターブの間を,周波数比が一定になるように12分割して12個の音階が決まっています.
 基準となる音階の周波数をf0とすると,そこからn個離れた音階の周波数fnは式4で表すことができます.

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(4)

 図2の回路の発振周波数fは式3で表わされ,抵抗の逆数に比例します.式3の3/(4C)をKに置き換え,f0のときの抵抗値をR0とすると,式5になります.

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(5)

 次にn個離れた音階の周波数となる抵抗値をRnとすると,式6になります.

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(6)

 式5と式6からRnを求めると式7になります.

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・(7)

 基準となる音階を「ド」とし,その周波数を523.25Hz,抵抗値を12.8kΩとして,表計算ソフトでそれぞれの音階の周波数と抵抗値を求めたものが表1になります.

表1 各音階の周波数と抵抗値を式4及び式7を使用して計算したもの

 表1を見ると分かるように「ミ」の音階の周波数は659.3Hzで,その音階とするための抵抗値は10.16kΩとなることが分かります.

●シミュレーションして「ドレミ」の音を聞く
 図6は,図1の回路をシミュレーションするための回路です.スイッチは電圧制御スイッチとし,遅延時間をずらした8個のパルス電源で順番にオンするように制御します.


図6 おもちゃの電子オルガンをシミュレーションする回路
「.WAVコマンド」でオーディオ・ファイルを作成し,スピーカ端子の音を聞けるようにする.

 スイッチに直列に接続されている抵抗は,音階に合わせ,表1の値を入力してあります.そして,スピーカ端子の電圧を音として確認するため「.WAVコマンド」でオーディオ・ファイルを作成します.「.WAVコマンド」は次のような引数を指定します.


 今回は「.wave doremi.wav」と指定していますので,図6をシミュレーションすると,回路図と同じフォルダに「doremi.wav」というファイルが作られます.このファイルを再生すると「ドレミファソラシド」という音を聞くことができます.
 図7図6のシミュレーション結果です.オーディオ・ファイルに出力した,SP_OUT端子の電圧を表示しています.「.WAVコマンド」は,±1Vをフルスケールとしてオーディオ・ファイルに出力するため,±1Vを超える信号を指定すると,クリップしてしまう点に注意が必要です.


図7 図6のSP_OUT端子の電圧のシミュレーション結果 「.WAVコマンド」は±1Vをフルスケールとしてオーディオ・ファイルに出力する.

 以上,タイマICを使用したおもちゃの電子オルガンについて解説しました.555というタイマICには色々な種類がありますが,LTspiceに内蔵されているモデルは,OUT端子が電源までフル・スイングできるCMOS型となっています.
 バイポーラ・トランジスタで構成された555の動作に関しては,「エデュケーショナル・ファイルで学ぶアナログ回路:周辺回路で用途が変わる555タイマIC」を参照してください.


■データ・ファイル

解説に使用しました,LTspiceの回路をダウンロードできます.
LTspice7_041.zip

●データ・ファイル内容
555_OSC.asc:図3をシミュレーションするための回路
555_OSC.plt:図3のグラフを描画するためのPlot settinngsファイル
555_RvsF.asc:図4の回路
doremi.asc:図6の回路

■LTspice関連リンク先


(01) LTspice ダウンロード先
(02) LTspice Users Club
(03) トランジスタ技術公式サイト LTspiceの部屋はこちら
(04) LTspice メール・マガジン全アーカイブs
(05) ◆LTspice電子回路マラソン・アーカイブs
(06) ◆LTspiceアナログ電子回路入門アーカイブs
(07) ◆LTspice電源&アナログ回路入門アーカイブs
(08) ◆IoT時代のLTspiceアナログ回路入門アーカイブs
(09) ◆オームの法則から学ぶLTspiceアナログ回路入門アーカイブs
(10) ◆LTspiceエデュケーショナル・ファイルで学ぶアナログ回路アーカイブs

トランジスタ技術 表紙

CQ出版社オフィシャルウェブサイトはこちらからどうぞ

CQ出版の雑誌・書籍のご購入は、ウェブショップで!


CQ出版社 新刊情報



別冊CQ ham radio QEX Japan No.53

巻頭企画 ハムのArduino活用の勧め

CQ ham radio 2024年12月号

アマチュア無線(再)開局お役立ち情報

CQゼミシリーズ

藤原進之介監修 テスト形式で総まとめ 情報Ⅰ標準問題集

トランジスタ技術 2024年12月号

世界AI ChatGPT電子回路

Design Wave Advance シリーズ

Arm Cortex-M23/M33プロセッサ・システム開発ガイド

アナログ回路設計オンサイト&オンライン・セミナ